/********************************************************************************
 * Project Name		[JavaSE_Fundamentals]
 * File Name     	[MultiDimensionalArray.java]
 * Creation Date 	[2015-01-01]
 * 
 * Copyright© ge.y.yang@gmail.com All Rights Reserved
 * 
 * Work hard, play harder, think big and keep fit
 ********************************************************************************/
package arrays;

/**
 * 多维数组
 * 
 * @author 不落的太阳(Sean Yang aka ShortPeace)
 * @version 1.0
 * @since jdk 1.8
 * 
 */
public class MultiDimensionalArray {

	/**
	 * 二维数组
	 */
	public static void twoDimensionsArray() {
		// 声明一个int类型的二维数组
		int[][] array;
		// 给定一个要解析的字符串
		String str = "1,2;3,4,5;6,7,8";
		// 首先按照分号来对字符串进行分割, 形成一个一维数组
		String[] sFirst = str.split(";");
		// 一维字符串数组的长度就是int数组的第一维的长度
		array = new int[sFirst.length][];

		for (int i = 0; i < sFirst.length; i++) {
			// 按照逗号分割一维字符串数组
			String[] sSecond = sFirst[i].split(",");
			// int数组二维的长度是上面分割后的字符串数组的长度
			array[i] = new int[sSecond.length];
			for (int j = 0; j < sSecond.length; j++) {
				array[i][j] = Integer.parseInt(sSecond[j]);
			}
		}

		/*
		 * 增强的for循环遍历方式
		 */
		for (int[] array1 : array) {
			for (int i : array1) {
				System.out.print(i + " ");
			}
		}
		System.out.println();
	}

	public static void main(String[] args) {
		twoDimensionsArray();
	}
}
